آموزش مسترکلاس مهندسی معکوس: IDA، Ghidra، لینوکس و x86_64 [ویدئویی] - آخرین آپدیت

دانلود Reverse Engineering Masterclass: IDA, Ghidra, Linux & x86_64 [Video]

نکته: ممکن هست محتوای این صفحه بروز نباشد ولی دانلود دوره آخرین آپدیت می باشد.
نمونه ویدیوها:
توضیحات دوره: در این دوره، شما جنبه‌های اصلی مهندسی معکوس و محاسبات سطح پایین (Low-level) را بررسی خواهید کرد. این مسیر با معرفی ابزارهای بنیادی مانند Ghidra و IDA آغاز می‌شود و مهارت‌های لازم برای تحلیل کد در سطح باینری را به شما می‌آموزد. شما با تکنیک‌های دیس‌اسمبل (Disassembly)، دستکاری حافظه و دیباگ کردن آشنا می‌شوید تا بتوانید کد ماشین را درک کرده و تغییر دهید. با پیشروی در دوره، وارد دنیای تحلیل بدافزار خواهید شد و یاد می‌گیرید چگونه نرم‌افزارهای مخرب را مهندسی معکوس کرده و آسیب‌پذیری‌های آن‌ها را شناسایی کنید. شما از طریق کار روی سناریوهای واقعی، راه‌اندازی محیط‌های مجازی و استفاده از ابزارهای داخلی برای تحلیل سیستم‌ها، تجربه عملی کسب خواهید کرد. چه تحلیل باینری‌های x86_64 باشد و چه یادگیری پیچیدگی‌های زبان اسمبلی، این دوره تضمین می‌کند که شما مهارت‌های لازم برای مقابله با چالش‌های مدرن امنیت سایبری را به دست آورید. در پایان این دوره، تسلط کامل بر تکنیک‌های مهندسی معکوس خواهید داشت و اعتماد به نفس لازم برای به‌کارگیری آن‌ها در پروژه‌های امنیتی را کسب می‌کنید. شما آماده خواهید بود تا با استفاده از ابزارها و تکنیک‌های استاندارد صنعت، عملیات دیس‌اسمبل، تحلیل بدافزار و دیباگینگ سطح پایین را انجام دهید. آنچه در این دوره می‌آموزید: - درک و به‌کارگیری تکنیک‌های مهندسی معکوس با استفاده از Ghidra و IDA. - تحلیل و دستکاری فایل‌های باینری، شامل زبان اسمبلی و معماری x86_64. - انجام تحلیل بدافزار و کشف آسیب‌پذیری‌ها در نرم‌افزارها. - راه‌اندازی و استفاده از ابزارهای دیباگ برای تحلیل نرم‌افزارهای سطح پایین. - پیمایش در کدهای دیس‌اسمبل شده و شناسایی توابع مهم در کد. - استفاده از ابزارهای واقعی برای بررسی و دستکاری حافظه و باینری‌ها. این دوره برای متخصصان IT، پژوهشگران امنیتی و توسعه‌دهندگانی که علاقه‌مند به تسلط بر مهندسی معکوس هستند، ایده‌آل است. داشتن درک پایه از برنامه‌نویسی، به‌ویژه زبان C یا ++C توصیه می‌شود. آشنایی با لینوکس نیز مفید است اما اجباری نیست.

سرفصل ها و درس ها

مقدمه‌ای بر مهندسی و علوم کامپیوتر Introduction to Computer Engineering & Science

  • کامپیوتر چگونه ارتباط برقرار می‌کند How Computer Communicates

  • آماده‌سازی محیط توسعه Preparing Dev Env

  • هنگام استفاده از کامپیوتر چه اتفاقی می‌افتد What Happens When You Use a Computer

حساب‌های کامپیوتری برای مبتدیان Computer Arithmetic for Beginners

  • جمع در سیستم دهدهی چگونه انجام می‌شود How Addition Happens in Decimal

  • حساب جمع در اعداد صحیح بدون علامت Addition Arithmetic in Unsigned Integers

  • تفریق در سیستم دهدهی Subtraction in Decimal

  • حساب تفریق در اعداد صحیح بدون علامت Subtraction Arithmetic in Unsigned Integers

  • حساب تفریق در اعداد صحیح علامت‌دار (اعداد منفی در باینری) Subtraction Arithmetic in Signed Integers (Negative Numbers in Binary)

جبر بول (Boolean Algebra) Boolean Algebra

  • جبر بول برای محاسبات سطح پایین Boolean Algebra for Low-Level Computing

الکترونیک Electronics

  • مقدمه‌ای بر الکترونیک برای مهندسان سخت‌افزار ۱ Introduction to Electronics for Hardware Engineers-1

  • گیت‌های منطقی و پیاده‌سازی سخت‌افزاری آن‌ها Logic Gates and Their Hardware Implementation

  • خازن‌ها و پیاده‌سازی در مدارها Capacitors and Implementation in Circuits

  • چرا از سلف‌ها در مادربرد استفاده می‌شود Why Use Inductors on Motherboards at All

  • مصرف توان و ترانزیستورها ۱ Power Consumption and Transistors-1

  • ترانزیستورهای MOSFET MOSFET Transistors

  • سوئیچ CMOS در پردازنده‌ها CMOS Switch in CPUs

مدارهای منطقی ترکیبی Combinational Logic Circuits

  • مقدمه‌ای بر مدارهای منطقی Introduction to Logic Circuits

  • جمع‌کننده‌های کامل (Full Adders) Full Adders

  • گیت‌های NAND و NOR NAND and NOR

آشنایی با Ghidra Introduction to Ghidra

  • درک نحوه عملکرد Ghidra و مراحل مهم دیگر Understanding How Ghidra Works and Other Important Steps to Do

  • آنالایزرهای Ghidra و رابط کاربری Ghidra Analyzers and User Interface

  • شخصی‌سازی Ghidra و نمودارها Customizing Ghidra and Graphs

  • آشنایی با نوار منوی بالای Ghidra Getting Familiar with Ghidra Top Menu Bar

مقدمه‌ای بر محاسبات سطح پایین Introduction to Low-Level Computing

  • مقدمه‌ای بر محاسبات سطح پایین Introduction to Low-Level Computing

  • از کاراکترها تا بیت‌ها From Characters to Bits

  • ساخت معماری مجموعه دستورالعمل‌های CPU Creating Our Instruction Set Architecture CPU

مقدمه‌ای بر مهندسی معکوس Introduction to Reverse Engineering

  • مهندسی معکوس و تحلیل بدافزار Reverse Engineering & Malware Analysis

  • ۵ مرحله مهم در مهندسی معکوس و تحلیل بدافزار 5 Important Steps in Reverse Engineering and Malware Analysis

  • محیط مجازی‌سازی برای انجام پروژه Virtualization Environment for Our Work

  • استفاده از ابزارهای داخلی برای تحلیل سیستم Using Built-in Tools for System Analysis

زبان اسمبلی Assembly Language

  • رجیسترها Registers

  • پرچم‌ها (Flags) Flags

  • آدرس‌دهی حافظه و Endianness Memory Addressing and Endianness

  • خواندن و درک زبان اسمبلی Read and Understand Assembly

  • اوپ‌کدها (Opcodes) Opcodes

  • دستکاری حافظه Manipulating Memory

ساخت آزمایشگاه Creating Lab

  • نصب SASM Installing SASM

  • دانلود Ghidra و ساختار فایل‌ها Downloading Ghidra and File Structure

  • نصب JDK در لینوکس Installing JDK in Linux

  • نصب JDK در ویندوز یا مک Installing JDK in Windows or MacOS

نوشتن اولین برنامه اسمبلی ۶۴ بیتی Writing Our First 64-Bit Assembly Program

  • برنامه Hello World با Makefile Hello World with Makefile

  • چرا NASM بهترین است؟ مقایسه اسمبلرها Why NASM Is Best and Compare Assemblers

  • طبق سنت‌ها: برنامه Hello World بدون Makefile Sticking to Traditions - Hello World Program Without Makefile

دیس‌اسمبلی و دیس‌اسمبلر Disassembly and Disassembler

  • تئوری دیس‌اسمبلی The Disassembly Theory

  • دیس‌اسمبلی چیست؟ Disassembly - What

درک انواع داده‌ها Understanding Data Types

  • درک معماری‌های CPU و فایل‌های باینری Understanding CPU Architectures and Binaries

  • تبدیل دهدهی به باینری با ریاضیات پایه Converting Decimal to Binary with Basic Math

شروع کار با Ghidra Starting with Ghidra

  • باز کردن پروژه در Ghidra Opening Project in Ghidra

  • کاوش در Ghidra Discovering Ghidra

دیباگ کردن x86 64 Debugging x86-64

  • اجرای GDB و تنظیمات اولیه Starting GDB and Setting Flavors

  • دیباگ و یافتن متغیرها در آدرس‌های حافظه Debugging and Finding Variables in Memory Addresses

  • یادگیری بیشتر با GDB Learning More with GDB

تحلیل بدافزار و مهندسی معکوس با Ghidra Malware Analysis and Reverse Engineering with Ghidra

  • شروع تحلیل بدافزار واقعی با Ghidra Starting Real Malware Analysis with Ghidra

  • تحلیل رشته‌های مشکوک با استفاده از Ghidra Analyzing Suspicious Strings Using Ghidra

  • استفاده از OSINT برای مهندسی معکوس OSINT for Reverse Engineering

  • تحلیل کتابخانه‌های مورد استفاده در بدافزار Analyzing Libraries That Malware Uses

  • استخراج فایل SYS از بدافزار Extracting SYS File from Malware

  • یافتن نقاط ورود و تغییر نام توابع تعریف نشده Finding Entry Points and Changing Undefined Function Names

تحلیل باینری Binary Analysis

  • تحلیل باینری و ۴ مرحله کامپایل Analysis of Binary and 4 Stages of Compilation

  • پیش‌پردازش (Preprocessing) Preprocessing

  • مرحله کامپایل (Compilation) Compilation Phase

  • مرحله اسمبلی (Assembly) Assembly Phase

  • مرحله لینک کردن (Linking) Linking Phase

نوشتن دومین برنامه اسمبلی ۶۴ بیتی Writing Our Second 64-Bit Assembly Program

  • کدنویسی فایل ASM Coding ASM File

  • تحلیل خروجی با GDB و ساخت Makefile Analyzing Output with GDB and Creating Makefile

نمادها، باینری‌های Stripped و Not Stripped Symbols, Stripped and Not Stripped Binaries

  • استفاده از READELF برای مشاهده اطلاعات نمادین Using READELF for Viewing Symbolic Information

  • نمایش محتویات فایل Object Revealing Contents of Object File

  • تلاش برای تحلیل فایل اجرایی باینری Trying to Analyze Binary Executable

  • تئوری نحوه بارگذاری و اجرای باینری How Binary Loads and Executes in Theory

فرمت ELF در لینوکس Linux - ELF Format

  • بررسی فرمت ELF و هدر فایل اجرایی Exploring the Executable and Linkable Format (ELF) and Executable Header

  • یادگیری فیلدهای ELF Learning ELF Fields

  • یادگیری فیلدهای هدر برنامه ELF Learning ELF Program Header Fields

فرمت PE در ویندوز Windows - PE Format

  • مبانی فرمت PE ویندوز Fundamentals of Windows PE Format

عملیات منطقی OR, XOR, AND OR XOR AND

  • عملیات OR OR

  • عملیات NOT NOT

  • عملیات XOR XOR

  • عملیات AND AND

نرم‌افزار IDA Pro / IDA Freeware IDA Pro / IDA Freeware

  • دانلود و نصب IDA Pro / IDA Freeware Downloading and Installing IDA Pro / IDA Freeware

  • آشنایی با محیط IDA Being Friends with IDA

  • تب‌های کاربردی در IDA Useful Tabs in IDA

دیباگر نمایش داده‌ها (DDD) Data Display Debugger - DDD

  • توسعه یک برنامه اسمبلی برای تحلیل با DDD Developing Another Assembly Program to Analyze with DDD

  • تحلیل کدهای نوشته شده قبلی Analyzing Previously Written Code

  • استفاده از DDD و تحلیل مقادیر RAX Using DDD and Analyzing RAX Values

پرش‌ها و حلقه‌ها (Jump and Loop) Jump and Loop

  • استفاده از شرط‌ها و پرش‌ها Using Conditions and Jumping

  • پرش در صورت برابر بودن (JE) Jump if Equal

  • پرش در صورت برابر نبودن (JNE) Jump if Not Equal

  • پرش در صورت بزرگتر بودن (JG) Jump if Greater

  • بزرگتر یا مساوی (JGE) Greater Than or Equal To

  • پرش در صورت کوچکتر بودن (JL) Jump if Less

  • کوچکتر یا مساوی (JLE) Jump if Less or Equal

  • پرش در صورت بالاتر بودن (JA) Jump if Above

  • بالاتر یا مساوی (JAE) Jump if Above or Equal

  • پرش در صورت پایین‌تر بودن (JB) Jump if Below

  • پایین‌تر یا مساوی (JBE) Jump if Below or Equal

پروژه اسمبلی با استفاده از پرش و حلقه Assembly Project Using Jump and Loop

  • توسعه پروژه حلقه و ماشین حساب با اسمبلی Developing Loop and Calculator Project with Assembly

  • تست پروژه Testing Our Project

دستکاری حافظه Memory Manipulation

  • پروژه EXABYTE Project EXABYTE

  • تست و تحلیل پروژه با READELF و GDB Testing and Analyzing Project with READELF and GDB

ساخت ماشین حساب با اسمبلی Calculator with Assembly

  • تعریف متغیرها Defining Variables

  • جمع و تفریق Addition and Subtraction

  • تکمیل جزئیات نهایی Last Decorations

  • توضیح کاربردی رجیسترها Explaining Registers in Practice

  • اتمام بخش Completing Section

پشته (Stack) Stack

  • دستکاری پشته (Stack) Manipulating Stack

توابع (Functions) Functions

  • توسعه اولین تابع کاربردی Developing Our First Functional Function

  • درک عمیق‌تر از توابع و متغیرهای محلی در اسمبلی Gaining Deeper Understanding of Functions and Local Variables in Assembly

استک فریم و توابع خارجی Stack Frame and External Functions

  • مبانی استک فریم و فراخوانی توابع تو در تو Fundamentals of Stack Frame and Nested Function Calls

  • توسعه تابع خارجی و فراخوانی آن‌ها Developing Our Own External Function and Calling Them

آرگومان‌های تابع و حفظ رجیسترها FuncArg and Preserving Registers

  • اتمام رجیسترها!!! Running Out of Registers!!!

همه چیز در مورد بیت‌ها!!! Bits Everywhere!!!

  • بیت‌ها، بیت‌ها، بیت‌ها!!! Bits, Bits, Bits!!!

ماکروها Macros

  • ماکروها Macros

ورودی/خروجی کنسول و فایل Console IO and File IO

  • ورودی - مراقب ورودی‌ها باشید!! Input - BE CAREFUL with INPUT!!

  • ورودی - روش‌های امن‌تر دریافت ورودی Input - MORE SECURE INPUT

عملیات فایل (File IO) File IO

  • درک مدیریت فایل در اسمبلی Understanding File Management in Assembly

  • ساخت فایل در اسمبلی Creating File in Assembly

  • حذف و بازنویسی فایل در اسمبلی Deleting and Overwriting File in Assembly

  • باز کردن و نوشتن در فایل در اسمبلی Opening and Writing File in Assembly

  • در نهایت، دستکاری فایل‌ها در برنامه اسمبلی Finally Manipulating Files in Assembly Program

نمایش نظرات

آموزش مسترکلاس مهندسی معکوس: IDA، Ghidra، لینوکس و x86_64 [ویدئویی]
جزییات دوره
23h 3m
118
Packtpub Packtpub
(آخرین آپدیت)
از 5
ندارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Taifun Mamedov Taifun Mamedov

تایفون مامدوف بنیان‌گذار Ocsaly، آکادمی پیشرو علوم کامپیوتر آنلاین است. تایفون با اشتیاق به توانمندسازی یادگیرندگان، دوره‌های تعاملی و عملی طراحی می‌کند که هم برای مبتدیان و هم برای متخصصان باتجربه مناسب است. رویکرد نوآورانه او یادگیری منعطف و خودگردان را با کاربردهای عملی در دنیای واقعی ترکیب می‌کند. به Ocsaly بپیوندید تا مهارت‌های کدنویسی خود را ارتقا دهید و مسیر شغلی خود را در تکنولوژی متحول کنید.